﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class DetailandmedV4KaardileKantudIsik : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IDetailandmedV4KaardileKantudIsik {
        
        private System.Int32? @__kaardiPiirkond;
        
        private System.Int32? @__kaardiNr;
        
        private string @__kaardiTyyp;
        
        private System.Int32? @__kandeNr;
        
        private string @__isikuTyyp;
        
        private string @__isikuRoll;
        
        private string @__isikuRollTekstina;
        
        private string @__eesnimi;
        
        private string @__nimiArinimi;
        
        private string @__isikukoodRegistrikood;
        
        private string @__valisKood;
        
        private string @__valisKoodRiik;
        
        private string @__valisKoodRiikTekstina;
        
        private System.DateTime? @__synniaeg;
        
        private System.Decimal? @__osamaks;
        
        private string @__osamaksuValuuta;
        
        private string @__osamaksuValuutaTekstina;
        
        private System.DateTime? @__volitusteLoppemiseKpv;
        
        private string @__aadressRiik;
        
        private string @__aadressRiikTekstina;
        
        private string @__aadressEhak;
        
        private string @__aadressEhakTekstina;
        
        private string @__aadressTanavMajaKorter;
        
        private System.DateTime? @__algusKpv;
        
        private System.DateTime? @__loppKpv;
        
        private string @__email;
        
        public DetailandmedV4KaardileKantudIsik() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public DetailandmedV4KaardileKantudIsik(
                    System.Int32? @kaardiPiirkond, 
                    System.Int32? @kaardiNr, 
                    string @kaardiTyyp, 
                    System.Int32? @kandeNr, 
                    string @isikuTyyp, 
                    string @isikuRoll, 
                    string @isikuRollTekstina, 
                    string @eesnimi, 
                    string @nimiArinimi, 
                    string @isikukoodRegistrikood, 
                    string @valisKood, 
                    string @valisKoodRiik, 
                    string @valisKoodRiikTekstina, 
                    System.DateTime? @synniaeg, 
                    System.Decimal? @osamaks, 
                    string @osamaksuValuuta, 
                    string @osamaksuValuutaTekstina, 
                    System.DateTime? @volitusteLoppemiseKpv, 
                    string @aadressRiik, 
                    string @aadressRiikTekstina, 
                    string @aadressEhak, 
                    string @aadressEhakTekstina, 
                    string @aadressTanavMajaKorter, 
                    System.DateTime? @algusKpv, 
                    System.DateTime? @loppKpv, 
                    string @email) {
            this.@__kaardiPiirkond = @kaardiPiirkond;
            this.@__kaardiNr = @kaardiNr;
            this.@__kaardiTyyp = @kaardiTyyp;
            this.@__kandeNr = @kandeNr;
            this.@__isikuTyyp = @isikuTyyp;
            this.@__isikuRoll = @isikuRoll;
            this.@__isikuRollTekstina = @isikuRollTekstina;
            this.@__eesnimi = @eesnimi;
            this.@__nimiArinimi = @nimiArinimi;
            this.@__isikukoodRegistrikood = @isikukoodRegistrikood;
            this.@__valisKood = @valisKood;
            this.@__valisKoodRiik = @valisKoodRiik;
            this.@__valisKoodRiikTekstina = @valisKoodRiikTekstina;
            this.@__synniaeg = @synniaeg;
            this.@__osamaks = @osamaks;
            this.@__osamaksuValuuta = @osamaksuValuuta;
            this.@__osamaksuValuutaTekstina = @osamaksuValuutaTekstina;
            this.@__volitusteLoppemiseKpv = @volitusteLoppemiseKpv;
            this.@__aadressRiik = @aadressRiik;
            this.@__aadressRiikTekstina = @aadressRiikTekstina;
            this.@__aadressEhak = @aadressEhak;
            this.@__aadressEhakTekstina = @aadressEhakTekstina;
            this.@__aadressTanavMajaKorter = @aadressTanavMajaKorter;
            this.@__algusKpv = @algusKpv;
            this.@__loppKpv = @loppKpv;
            this.@__email = @email;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected DetailandmedV4KaardileKantudIsik(IDetailandmedV4KaardileKantudIsik @detailandmedV4KaardileKantudIsik) {
            this.@__kaardiPiirkond = @detailandmedV4KaardileKantudIsik.KaardiPiirkond;
            this.@__kaardiNr = @detailandmedV4KaardileKantudIsik.KaardiNr;
            this.@__kaardiTyyp = @detailandmedV4KaardileKantudIsik.KaardiTyyp;
            this.@__kandeNr = @detailandmedV4KaardileKantudIsik.KandeNr;
            this.@__isikuTyyp = @detailandmedV4KaardileKantudIsik.IsikuTyyp;
            this.@__isikuRoll = @detailandmedV4KaardileKantudIsik.IsikuRoll;
            this.@__isikuRollTekstina = @detailandmedV4KaardileKantudIsik.IsikuRollTekstina;
            this.@__eesnimi = @detailandmedV4KaardileKantudIsik.Eesnimi;
            this.@__nimiArinimi = @detailandmedV4KaardileKantudIsik.NimiArinimi;
            this.@__isikukoodRegistrikood = @detailandmedV4KaardileKantudIsik.IsikukoodRegistrikood;
            this.@__valisKood = @detailandmedV4KaardileKantudIsik.ValisKood;
            this.@__valisKoodRiik = @detailandmedV4KaardileKantudIsik.ValisKoodRiik;
            this.@__valisKoodRiikTekstina = @detailandmedV4KaardileKantudIsik.ValisKoodRiikTekstina;
            this.@__synniaeg = @detailandmedV4KaardileKantudIsik.Synniaeg;
            this.@__osamaks = @detailandmedV4KaardileKantudIsik.Osamaks;
            this.@__osamaksuValuuta = @detailandmedV4KaardileKantudIsik.OsamaksuValuuta;
            this.@__osamaksuValuutaTekstina = @detailandmedV4KaardileKantudIsik.OsamaksuValuutaTekstina;
            this.@__volitusteLoppemiseKpv = @detailandmedV4KaardileKantudIsik.VolitusteLoppemiseKpv;
            this.@__aadressRiik = @detailandmedV4KaardileKantudIsik.AadressRiik;
            this.@__aadressRiikTekstina = @detailandmedV4KaardileKantudIsik.AadressRiikTekstina;
            this.@__aadressEhak = @detailandmedV4KaardileKantudIsik.AadressEhak;
            this.@__aadressEhakTekstina = @detailandmedV4KaardileKantudIsik.AadressEhakTekstina;
            this.@__aadressTanavMajaKorter = @detailandmedV4KaardileKantudIsik.AadressTanavMajaKorter;
            this.@__algusKpv = @detailandmedV4KaardileKantudIsik.AlgusKpv;
            this.@__loppKpv = @detailandmedV4KaardileKantudIsik.LoppKpv;
            this.@__email = @detailandmedV4KaardileKantudIsik.Email;
        }
        
        public virtual System.Int32? KaardiPiirkond {
            get {
                return this.@__kaardiPiirkond;
            }
            set {
                this.@__kaardiPiirkond = value;
            }
        }
        
        public virtual System.Int32? KaardiNr {
            get {
                return this.@__kaardiNr;
            }
            set {
                this.@__kaardiNr = value;
            }
        }
        
        public virtual string KaardiTyyp {
            get {
                return this.@__kaardiTyyp;
            }
            set {
                this.@__kaardiTyyp = value;
            }
        }
        
        public virtual System.Int32? KandeNr {
            get {
                return this.@__kandeNr;
            }
            set {
                this.@__kandeNr = value;
            }
        }
        
        public virtual string IsikuTyyp {
            get {
                return this.@__isikuTyyp;
            }
            set {
                this.@__isikuTyyp = value;
            }
        }
        
        public virtual string IsikuRoll {
            get {
                return this.@__isikuRoll;
            }
            set {
                this.@__isikuRoll = value;
            }
        }
        
        public virtual string IsikuRollTekstina {
            get {
                return this.@__isikuRollTekstina;
            }
            set {
                this.@__isikuRollTekstina = value;
            }
        }
        
        public virtual string Eesnimi {
            get {
                return this.@__eesnimi;
            }
            set {
                this.@__eesnimi = value;
            }
        }
        
        public virtual string NimiArinimi {
            get {
                return this.@__nimiArinimi;
            }
            set {
                this.@__nimiArinimi = value;
            }
        }
        
        public virtual string IsikukoodRegistrikood {
            get {
                return this.@__isikukoodRegistrikood;
            }
            set {
                this.@__isikukoodRegistrikood = value;
            }
        }
        
        public virtual string ValisKood {
            get {
                return this.@__valisKood;
            }
            set {
                this.@__valisKood = value;
            }
        }
        
        public virtual string ValisKoodRiik {
            get {
                return this.@__valisKoodRiik;
            }
            set {
                this.@__valisKoodRiik = value;
            }
        }
        
        public virtual string ValisKoodRiikTekstina {
            get {
                return this.@__valisKoodRiikTekstina;
            }
            set {
                this.@__valisKoodRiikTekstina = value;
            }
        }
        
        public virtual System.DateTime? Synniaeg {
            get {
                return this.@__synniaeg;
            }
            set {
                this.@__synniaeg = value;
            }
        }
        
        public virtual System.Decimal? Osamaks {
            get {
                return this.@__osamaks;
            }
            set {
                this.@__osamaks = value;
            }
        }
        
        public virtual string OsamaksuValuuta {
            get {
                return this.@__osamaksuValuuta;
            }
            set {
                this.@__osamaksuValuuta = value;
            }
        }
        
        public virtual string OsamaksuValuutaTekstina {
            get {
                return this.@__osamaksuValuutaTekstina;
            }
            set {
                this.@__osamaksuValuutaTekstina = value;
            }
        }
        
        public virtual System.DateTime? VolitusteLoppemiseKpv {
            get {
                return this.@__volitusteLoppemiseKpv;
            }
            set {
                this.@__volitusteLoppemiseKpv = value;
            }
        }
        
        public virtual string AadressRiik {
            get {
                return this.@__aadressRiik;
            }
            set {
                this.@__aadressRiik = value;
            }
        }
        
        public virtual string AadressRiikTekstina {
            get {
                return this.@__aadressRiikTekstina;
            }
            set {
                this.@__aadressRiikTekstina = value;
            }
        }
        
        public virtual string AadressEhak {
            get {
                return this.@__aadressEhak;
            }
            set {
                this.@__aadressEhak = value;
            }
        }
        
        public virtual string AadressEhakTekstina {
            get {
                return this.@__aadressEhakTekstina;
            }
            set {
                this.@__aadressEhakTekstina = value;
            }
        }
        
        public virtual string AadressTanavMajaKorter {
            get {
                return this.@__aadressTanavMajaKorter;
            }
            set {
                this.@__aadressTanavMajaKorter = value;
            }
        }
        
        public virtual System.DateTime? AlgusKpv {
            get {
                return this.@__algusKpv;
            }
            set {
                this.@__algusKpv = value;
            }
        }
        
        public virtual System.DateTime? LoppKpv {
            get {
                return this.@__loppKpv;
            }
            set {
                this.@__loppKpv = value;
            }
        }
        
        public virtual string Email {
            get {
                return this.@__email;
            }
            set {
                this.@__email = value;
            }
        }
    }
}
